// 请求文件
// 目的：创建axios用于发送请求
import { message } from "ant-design-vue";
import axios from "axios";
import useUserStore from "../store/user";
// 1.重新创建axios实例
const service = axios.create({
  // 公共路径（基础路径
    baseURL: '/api',
    timeout:1000,
  });
  // 添加请求拦截器
  service.interceptors.request.use( (config) =>{
    console.log("统一携带token",config);
    if(config.url != "/user/login"){
      const userStore = useUserStore();
      console.log(userStore.token);
      config.headers.Authorization = `Bearer ${userStore.token}`;
    }
    return config;
  },  
  (error)=> {
    // 对请求错误做些什么
    return Promise.reject(error);
  });

// 添加响应拦截器
service.interceptors.response.use( (response)=> {
    console.log(response);
    return response.data;
  },  (error)=> {
    // 对响应错误做点什么东西
    // console.log(error);
    // 处理错误信息
    // 401：验证身份不通过
    if (error.status === 401) {
      message.error("身份验证失败");
    }
    return Promise.reject(error);
  });
  export default service;